In recent years, enterprises have shifted much of their computing needs from enterprise owned and operated computer systems to cloud computing providers. Cloud computing providers charge enterprises to store and run their applications in a cloud-computing facility and allow enterprises to purchase other computing services in much the same way utility customers purchase a service from a public utility. A typical cloud-computing facility is composed of numerous racks of servers, switches, routers, and mass data-storage devices interconnected by local-area networks, wide-area networks, and wireless communications that may be consolidated into a single data center or distributed geographically over a number of data centers. Enterprises typically run their applications in a cloud-computing facility as virtual machines (“VMs”) that are consolidated into a virtual data center (“VDC”) also called a software defined data center (“SDDC”). A VDC recreates the architecture and functionality of a physical data center for running an enterprise's applications.
VDCs store data in storage arrays. Although a typical storage array consists of storage processors, processor enclosures, arrays of tens to hundreds of drives and drive enclosures, depending on the vendor offering storage, the architecture and components of the storage arrays varies widely. The network infrastructure connecting the storage arrays is typically composed of fiber cable, fiber cable over Ethernet, or plain Ethernet and corresponding adapters depending on performance requirements. Storage arrays are typically divided into two categories—Storage Area Network (“SAN”) and Network Attached Storage (“NAS”). The difference between a SAN and a NAS is that a SAN is composed of a network of storage arrays, while a NAS is a storage device connected to a network. End users don't save files directly to SANs. Instead, SANs store blocks of data in a network of physical data-storage devices (e.g., tape drives, solid state drives and hard disk drives) for access by the applications running on servers. In contrast, end users can save files directly to a NAS. The hardware architecture, array components and the way storage units are made available by storage systems and consumed by VMs and physical servers are different for the SAN and NAS. For example, a SAN provides logical disks (“LDs”) and NAS provides shared volumes to host systems. An LD is a virtual data-storage device that provides an area of usable storage capacity on one or more physical data-storage devices.
However, monitoring all aspects of storage costs for a VDC and fairly allocating this cost to LDs is often challenging for IT managers for the following reasons: 1) It is often challenging to keep track of all storage arrays and their individual components that are used for data storage. 2) Calculation of total cost of ownership of storage is often complicated by the various drive types (e.g. solid state drive and hard disk drives) and component specification (e.g. disk array with 15 slots). 3) Fair allocation of the total storage cost to LDs may be further complicated when the LDs are exposed to external hosts and identify unallocated cost or wastage of storage. In addition, depending on the physical data-storage array architecture, the number of layers between the physical data-storage devices and LDs varies to a great extent. IT managers seek methods and systems to calculate storage costs of logical disks that take into consideration all aspects that attribute to storage expense in a physical data center.